package componentes;

import java.util.ArrayList;

public class Aldea {
	
	String nombre;
	Tesoro tesoro;
	ArrayList<String> vecinos;
	boolean isAldeaInicial; //true o false, si es la aldea inicial
	boolean isAldeaFinal;   //true o false, si es la aldea final
	private int visitada=0;
	private int acumulado;
	
	
	public Aldea(){
	}
	
	
	
	public boolean isAldeaInicial() {
		return isAldeaInicial;
	}


	public void setisAldeaInicial(boolean aldeainicial) {
		if(aldeainicial)
			visitada=1;
		this.isAldeaInicial = aldeainicial;
	}


	public boolean isAldeaFinal() {
		return isAldeaFinal;
	}


	public ArrayList<String> getVecinos() {
		return vecinos;
	}




	public void setVecinos(ArrayList<String> vecinos) {
		this.vecinos = vecinos;
	}




	public void setisAldeaFinal(boolean aldeafinal) {
		this.isAldeaFinal = aldeafinal;
	}


	public String getNombre() {
		return nombre;
	}


	public void setNombre(String nombre) {
		this.nombre = nombre;
	}


	public Tesoro getTesoro() {
		return tesoro;
	}


	public void setTesoro(Tesoro tesoro) {
		this.tesoro = tesoro;
	}



	public boolean esIgual(Aldea aldea) {
		// TODO Auto-generated method stub
		if(!this.nombre.equals(aldea)){
			return false;
		}
		
		if(this.tesoro != aldea.getTesoro()){
			return false;
		}
		
		if(this.getVecinos().size() == aldea.getVecinos().size()){
			for(int i=0; i< this.getVecinos().size(); i++){
				if(!this.getVecinos().get(i).equals(aldea.getVecinos().get(i))){
					return false;
				}
			}
		}
		
		if(this.isAldeaFinal != aldea.isAldeaFinal){
			return false;
		}
		
		if(this.isAldeaInicial != aldea.isAldeaInicial){
			return false;
		}
		
		return true;
	}



	public void setVisitada(int vis) {
		this.visitada = vis;
	}



	public int getVisitada() {
		return visitada;
	}



	public int getAcumulado() {
		return acumulado;
	}



	public void setAcumulado(int acumulado) {
		this.acumulado = acumulado;
	}
	
	

}
